-- location ~ /echo {
--     content_by_lua_file     service/http/echo.lua
-- }

local echo_string  = "hello nginx\n"    -- 配置发送给客户端的字符串
local method = ngx.req.get_method()     -- 检查请求方法
if method ~= "GET" then                 -- 必须是GET方法
    return                              -- 否则直接退出
end

ngx.reg.discard_body()      -- 丢弃请求体

local args = ngx.var.args or "" -- 获取uri参数

local len = #echo_string    -- 计算字符串的长度
local str = echo_string     -- 准备发送的数据

if #args > 0 then               -- 有参数则加上参数再发送
    len = #args + 1 + len       -- 需要加上$args的长度
    str = args .. "," .. str    -- 参数字符串加在前面
end

ngx.header.content_length = len -- 设置响应体长度
ngx.status = 200                -- 设置状态码

ngx.send_headers()              -- 发送响应头，也可以不调用
ngx.print(str)                  -- 发送响应体，会默认发送响应头
